package com.scw.dao.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.orm.hibernate3.HibernateTemplate;

import com.scw.dao.BasicDao;
import com.scw.dao.TipDao;
import com.scw.model.Tip;

public class TipDaoImpl implements TipDao {
	@Autowired
	private HibernateTemplate hibernateTemplate;

	public void delete(Tip tip) {
		hibernateTemplate.delete(tip);
	}

	public List<Tip> findAll() {
		
		return (List<Tip>)hibernateTemplate.find("FROM Tip");
	}

	public List<Tip> findByUserId(Long userId) {
		String sql="from Tip where user_id=?";
		return (List<Tip>)hibernateTemplate.find(sql,new Object[]{userId});
	}

	public Tip get(Long id) {
		return (Tip) hibernateTemplate.get(Tip.class, id);
	}

	public Tip get(Tip tip) {
		tip.setUser_id(tip.getSysUser().getId());
		tip.setSysUser(null);
		BasicDao<Tip> dao=BasicDao.getDao(Tip.class);
		return dao.getBean(tip);
	}

	public Tip save(Tip tip) {
		hibernateTemplate.save(tip);
		return tip;
	}

	public void update(Tip tip) {
		hibernateTemplate.update(tip);
	}

	public HibernateTemplate getHibernateTemplate() {
		return hibernateTemplate;
	}

	public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
		this.hibernateTemplate = hibernateTemplate;
	}
	
}
